Causality-based Model Checking

نویسندگان

  • Bernd Finkbeiner
  • Andrey Kupriyanov
چکیده

Trace Tableau = concrete trace unwinding + abstract looping trace tableau • automatic procedure to find proofs in the form of a looping trace tableau Figure 1: Data structures for causality-based model checking. the property of interest. The exploration algorithm proceeds by picking some forest leaf, and employing an applicable trace transformer, producing a number of further nodes. The exploration stops when all forest leaves are found to be contradictory. The most involved datastructure, abstract trace tableau, contains, besides concrete trace unwinding, an abstract looping trace tableau, which may have covering edges between tableau nodes. A covering condition is an extension of subgraph isomorphism to concurrent traces: a concurrent trace, which is a subgraph of another trace, represents a situation which was encountered in the analysis before. This tableau is also allowed to contain causal loops, i.e. infinite repetitions of a sequence of trace productions, which together imply the impossibility of a computation satisfying them. The abstract trace tableau is used to track premises of already applied proof rules, and, thus, simplifies coverings. 3 Two Examples We illustrate the framework with two examples taken from [4] and [5]: one for the analysis of a safety property (reachability), and another for the analysis of a liveness property (termination). Safety. Consider the synchronized system shown in the top part of Figure 2: the example was introduced by Esparza and Heljanko in [2] to illustrate the exponential succinctness of Petri net unfoldings. There are n+ 1 processes, and we want to check whether the global transition c is executable. Note that the state space of this system is exponential with respect to n: the system contains 3 · 2n−1 reachable states. Thus, approaches based on state space exploration will suffer from the state space explosion problem. The authors of [2] show that the Petri net unfolding of the example system contains 2 · n+ 3 places, i.e., a linear size unfolding can represent succinctly the exponential state space. We use the same example to demonstrate that the trace unwinding of the example system never exceeds n+ 6 nodes, but a constant size unwinding of just 7 nodes also suffice, which we show in the bottom part of Figure 2. Node 1, the root of the unwinding, captures all system traces where c is executed. One of it’s preconditions is that the first process should be at location r2; but the initial condition says that the system is at location r1: a contradiction. Thus, a transition that goes from r1 to r2 is necessary, B. Finkbeiner & A. Kupriyanov 35

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Symbolic Causality Checking Using Bounded Model Checking

In precursory work we have developed causality checking, a fault localization method for concurrent system models relying on the Halpern and Pearl counterfactual model of causation that identifies ordered occurrences of system events as being causal for the violation of non-reachability properties. Our first implementation of causality checking relies on explicit-state model checking. In this p...

متن کامل

Towards Symbolic Causality Checking using SAT-Solving

With the increasing size and complexity of modern safety critical embedded systems, the need for automated analysis methods is growing as well. Causality Checking is an automated technique for formal causality analysis of system models. In this paper we report on work in progress towards an Symbolic Causality Checking approach. The proposed approach is based on bounded model checking using SAT ...

متن کامل

Causality Checking of Safety-Critical Software and Systems

The complexity of modern safety-critical systems is steadily increasing due to the amount of functionality that is implemented in those systems. In order to be able to asses the correctness and safety of these systems in a comprehensive manner automated or, at least, computer-aided techniques are needed. Model checking, a formal verification technique, provides an automated algorithmic analysis...

متن کامل

Causality Checking for Complex System Models

We present an approach for the algorithmic computation of causalities in system models that we refer to as causality checking. We base our notion of causality on counterfactual reasoning, in particular using the structural equation model approach by Halpern and Pearl that we recently have extended to reason about computational models. In this paper we present a search-based on-the-fly approach ...

متن کامل

Towards Causality Checking for Complex System Models

With the increasing growth of the size and complexity of modern safetycritical systems, the demand for model based engineering methods that both help in architecting such systems and to asses their safety and correctness becomes increasingly obvious. Causality checking is an automated method for formal causality analysis of system models and system execution traces. In this paper we report on w...

متن کامل

Generating Diagnoses for Probabilistic Model Checking Using Causality

One of the major advantages of model checking over other formal methods of verification is its ability to generate an error trace when the specification is falsified in the model. We call this trace a counterexample. In probabilistic model checking (PMC), counterexample generation has a quantitative aspect. The counterexample is a set of paths in which a path formula holds, and their accumulate...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2017